home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 5.2 KB | 156 lines | [TEXT/MPS ] |
- /*
- File: SoundComponents.idl
-
- Contains: Sound Components Interfaces.
-
- Version: Technology: System 7.5
- Release: Universal Interfaces 3.0d3 on Copland DR1
-
- Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
-
- Bugs?: If you find a problem with this file, send the file and version
- information (from above) and the problem description to:
-
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
- #ifndef __SOUNDCOMPONENTS_IDL__
- #define __SOUNDCOMPONENTS_IDL__
-
- #include <somobj.idl>
- #include <somcls.idl>
-
- #ifndef __TYPES_IDL__
- #include <Types.idl>
- #endif
- #ifndef __COMPONENTS_IDL__
- #include <Components.idl>
- #endif
- #ifndef __SOUND_IDL__
- #include <Sound.idl>
- #endif
-
- #ifdef __SOMIDL__
-
- /*
- * * * N O T E * * *
-
- This file has been updated to include Sound Manager 3.1 interfaces.
-
- Some of the Sound Manager 3.0 interfaces were not put into the InterfaceLib
- that originally shipped with the PowerMacs. These missing functions and the
- new 3.1 interfaces have been released in the SoundLib library for PowerPC
- developers to link with. The runtime library for these functions are
- installed by Sound Manager 3.1. The following functions are found in SoundLib.
-
- AudioGetBass, AudioGetInfo, AudioGetMute, AudioGetOutputDevice,
- AudioGetTreble, AudioGetVolume, AudioMuteOnEvent, AudioSetBass,
- AudioSetMute, AudioSetToDefaults, AudioSetTreble, AudioSetVolume,
- OpenMixerSoundComponent, CloseMixerSoundComponent, SoundComponentAddSource,
- SoundComponentGetInfo, SoundComponentGetSource, SoundComponentGetSourceData,
- SoundComponentInitOutputDevice, SoundComponentPauseSource,
- SoundComponentPlaySourceBuffer, SoundComponentRemoveSource,
- SoundComponentSetInfo, SoundComponentSetOutput, SoundComponentSetSource,
- SoundComponentStartSource, SoundComponentStopSource
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- constants
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- sound component types and subtypes
- */
- /*sound component set/get info selectors*/
- /*features flags*/
- #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
- /*SoundComponentPlaySourceBuffer action flags*/
- /*flags for OpenMixerSoundComponent*/
- /*SoundParamBlock quality flags*/
- /*useful bit masks*/
- /*Audio Component constants*/
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- typedefs
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- */
- /*
- ShortFixed consists of an 8 bit, 2's complement integer part in the high byte,
- with an 8 bit fractional part in the low byte; its range is -128 to 127.99609375
- */
- typedef short ShortFixed;
-
-
-
- typedef OpaquePtr SoundParamBlockPtr; /* Substituted OpaquePtr for “SoundParamBlock*” */
-
- typedef OpaquePtr SoundParamProcPtr;
- typedef OpaquePtr SoundParamUPP;
- typedef SOMLargeStruct SoundParamBlock; /* Derived from a struct of 62 bytes in size */
-
- /*private thing to reference a Sound Source*/
- typedef OpaquePtr SoundSource;
-
- typedef OpaquePtr SoundSourcePtr; /* Substituted OpaquePtr for “SoundSource*” */
-
- typedef SOMLargeStruct SoundComponentLink; /* Derived from a struct of 28 bytes in size */
-
- typedef OpaquePtr SoundComponentLinkPtr; /* Substituted OpaquePtr for “SoundComponentLink*” */
-
- typedef SOMLargeStruct AudioInfo; /* Derived from a struct of 10 bytes in size */
-
- typedef OpaquePtr AudioInfoPtr; /* Substituted OpaquePtr for “AudioInfo*” */
-
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- functions for sound components
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Sound Component dispatch selectors
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Sound Manager 3.0 utilities
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- basic sound component functions
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- junction methods for the mixer, must be called at non-interrupt level
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- info methods
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- control methods
- */
- /*
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- interface for Audio Components
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- */
- /*
- Volume is described as a value between 0 and 1, with 0 indicating minimum
- volume and 1 indicating maximum volume; if the device doesn't support
- software control of volume, then a value of unimpErr is returned, indicating
- that these functions are not supported by the device
- */
- /*
- If the device doesn't support software control of mute, then a value of unimpErr is
- returned, indicating that these functions are not supported by the device.
- */
- /*
- AudioSetToDefaults causes the associated device to reset its volume and mute values
- (and perhaps other characteristics, e.g. attenuation) to "factory default" settings
- */
- /*This routine is required; it must be implemented by all audio components*/
- /*This is routine is private to the AudioVision component. It enables the watching of the mute key.*/
- #endif
-
- #endif /* __SOMIDL__ */
-
- #endif /* __SOUNDCOMPONENTS_IDL__ */
-
-